﻿using System;
using System.CodeDom.Compiler;
using System.Diagnostics;
using Google.Protobuf;
using Google.Protobuf.Reflection;

namespace EggLink.DanhengServer.Proto
{
	// Token: 0x020001CF RID: 463
	[DebuggerDisplay("{ToString(),nq}")]
	public sealed class ChallengeStageInfo : IMessage<ChallengeStageInfo>, IMessage, IEquatable<ChallengeStageInfo>, IDeepCloneable<ChallengeStageInfo>, IBufferMessage
	{
		// Token: 0x17000625 RID: 1573
		// (get) Token: 0x0600150B RID: 5387 RVA: 0x0003C2C1 File Offset: 0x0003A4C1
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public static MessageParser<ChallengeStageInfo> Parser
		{
			get
			{
				return ChallengeStageInfo._parser;
			}
		}

		// Token: 0x17000626 RID: 1574
		// (get) Token: 0x0600150C RID: 5388 RVA: 0x0003C2C8 File Offset: 0x0003A4C8
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public static MessageDescriptor Descriptor
		{
			get
			{
				return ChallengeStageInfoReflection.Descriptor.MessageTypes[0];
			}
		}

		// Token: 0x17000627 RID: 1575
		// (get) Token: 0x0600150D RID: 5389 RVA: 0x0003C2DA File Offset: 0x0003A4DA
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		MessageDescriptor IMessage.Descriptor
		{
			get
			{
				return ChallengeStageInfo.Descriptor;
			}
		}

		// Token: 0x0600150E RID: 5390 RVA: 0x0003C2E1 File Offset: 0x0003A4E1
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public ChallengeStageInfo()
		{
		}

		// Token: 0x0600150F RID: 5391 RVA: 0x0003C2E9 File Offset: 0x0003A4E9
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public ChallengeStageInfo(ChallengeStageInfo other) : this()
		{
			this.bossInfo_ = ((other.bossInfo_ != null) ? other.bossInfo_.Clone() : null);
			this._unknownFields = UnknownFieldSet.Clone(other._unknownFields);
		}

		// Token: 0x06001510 RID: 5392 RVA: 0x0003C31E File Offset: 0x0003A51E
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public ChallengeStageInfo Clone()
		{
			return new ChallengeStageInfo(this);
		}

		// Token: 0x17000628 RID: 1576
		// (get) Token: 0x06001511 RID: 5393 RVA: 0x0003C326 File Offset: 0x0003A526
		// (set) Token: 0x06001512 RID: 5394 RVA: 0x0003C32E File Offset: 0x0003A52E
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public ChallengeBossInfo BossInfo
		{
			get
			{
				return this.bossInfo_;
			}
			set
			{
				this.bossInfo_ = value;
			}
		}

		// Token: 0x06001513 RID: 5395 RVA: 0x0003C337 File Offset: 0x0003A537
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public override bool Equals(object other)
		{
			return this.Equals(other as ChallengeStageInfo);
		}

		// Token: 0x06001514 RID: 5396 RVA: 0x0003C345 File Offset: 0x0003A545
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public bool Equals(ChallengeStageInfo other)
		{
			return other != null && (other == this || (object.Equals(this.BossInfo, other.BossInfo) && object.Equals(this._unknownFields, other._unknownFields)));
		}

		// Token: 0x06001515 RID: 5397 RVA: 0x0003C378 File Offset: 0x0003A578
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public override int GetHashCode()
		{
			int num = 1;
			if (this.bossInfo_ != null)
			{
				num ^= this.BossInfo.GetHashCode();
			}
			if (this._unknownFields != null)
			{
				num ^= this._unknownFields.GetHashCode();
			}
			return num;
		}

		// Token: 0x06001516 RID: 5398 RVA: 0x0003C3B4 File Offset: 0x0003A5B4
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public override string ToString()
		{
			return JsonFormatter.ToDiagnosticString(this);
		}

		// Token: 0x06001517 RID: 5399 RVA: 0x0003C3BC File Offset: 0x0003A5BC
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public void WriteTo(CodedOutputStream output)
		{
			output.WriteRawMessage(this);
		}

		// Token: 0x06001518 RID: 5400 RVA: 0x0003C3C5 File Offset: 0x0003A5C5
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		void IBufferMessage.InternalWriteTo(ref WriteContext output)
		{
			if (this.bossInfo_ != null)
			{
				output.WriteRawTag(10);
				output.WriteMessage(this.BossInfo);
			}
			if (this._unknownFields != null)
			{
				this._unknownFields.WriteTo(ref output);
			}
		}

		// Token: 0x06001519 RID: 5401 RVA: 0x0003C3F8 File Offset: 0x0003A5F8
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public int CalculateSize()
		{
			int num = 0;
			if (this.bossInfo_ != null)
			{
				num += 1 + CodedOutputStream.ComputeMessageSize(this.BossInfo);
			}
			if (this._unknownFields != null)
			{
				num += this._unknownFields.CalculateSize();
			}
			return num;
		}

		// Token: 0x0600151A RID: 5402 RVA: 0x0003C438 File Offset: 0x0003A638
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public void MergeFrom(ChallengeStageInfo other)
		{
			if (other == null)
			{
				return;
			}
			if (other.bossInfo_ != null)
			{
				if (this.bossInfo_ == null)
				{
					this.BossInfo = new ChallengeBossInfo();
				}
				this.BossInfo.MergeFrom(other.BossInfo);
			}
			this._unknownFields = UnknownFieldSet.MergeFrom(this._unknownFields, other._unknownFields);
		}

		// Token: 0x0600151B RID: 5403 RVA: 0x0003C48C File Offset: 0x0003A68C
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public void MergeFrom(CodedInputStream input)
		{
			input.ReadRawMessage(this);
		}

		// Token: 0x0600151C RID: 5404 RVA: 0x0003C498 File Offset: 0x0003A698
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		void IBufferMessage.InternalMergeFrom(ref ParseContext input)
		{
			uint num;
			while ((num = input.ReadTag()) != 0U)
			{
				if (num != 10U)
				{
					this._unknownFields = UnknownFieldSet.MergeFieldFrom(this._unknownFields, ref input);
				}
				else
				{
					if (this.bossInfo_ == null)
					{
						this.BossInfo = new ChallengeBossInfo();
					}
					input.ReadMessage(this.BossInfo);
				}
			}
		}

		// Token: 0x040008B2 RID: 2226
		private static readonly MessageParser<ChallengeStageInfo> _parser = new MessageParser<ChallengeStageInfo>(() => new ChallengeStageInfo());

		// Token: 0x040008B3 RID: 2227
		private UnknownFieldSet _unknownFields;

		// Token: 0x040008B4 RID: 2228
		public const int BossInfoFieldNumber = 1;

		// Token: 0x040008B5 RID: 2229
		private ChallengeBossInfo bossInfo_;
	}
}
